<template>
  <excel-export :filename="filename" :sheet="excelData">
    <el-button type="primary" size="small">导出EXCEL</el-button>
  </excel-export>
</template>

<script>
import { ExcelExport } from 'pikaz-excel-js'
export default {
  components: {
    ExcelExport
  },
  props: {
    filename: {
      type: String,
      defalut: '表格导出'
    },
    excelTableData: {
      type: Array
    }
  },
  computed: {
    excelData() {
      // 深拷贝数据，防止修改源数据
      const tempData = JSON.parse(JSON.stringify(this.excelTableData))
      tempData[0].table.forEach(item => {
        for (const key in item) {
          const element = item[key]
          if (!element) {
            // 如果没数据就弄个空格，否则导出的单元格没有样式
            item[key] = ' '
          }
          // 如果是数字转为字符串
          if (typeof element === 'number') {
            item[key] = '' + item[key]
          }
        }
      })

      return tempData
    }
  }
}
</script>

<style>
.excel-export {
  width: 100px;
}
</style>
